home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-10-12 | 575 b | 20 lines | [TEXT/JV01] |
- .macro foreach [:foreach.inputs] 2
- catch "foreach.catchtag ~
- [op foreach.done runresult ~
- [foreach1 bl :foreach.inputs last :foreach.inputs 1]]
- op []
- end
-
- to foreach1 :template.lists :foreach.template :template.number
- if emptyp first :template.lists [throw "foreach.catchtag]
- apply :foreach.template firsts :template.lists
- .maybeoutput foreach1 bfs :template.lists :foreach.template :template.number+1
- end
-
- to foreach.done :foreach.result
- if emptyp :foreach.result [op [stop]]
- op list "output quoted first :foreach.result
- end
-
- bury [foreach foreach1 foreach.done]
-